package file;

import java.io.File;
import java.io.FileFilter;

/**
 * 获取file包中大小超过1000字节的所有子项,输出这些子项的名字和实际占用的字节数
 *
 * @author XingHaiYang
 * @date 2022/9/13 20:37
 */
public class Test3 {
    public static void main(String[] args) {
        //        FileFilter filter = new FileFilter() {
//            public boolean accept(File file) {
//                return file.length()>1000;
//            }
//        };
//        File dir = new File("./src/file");
//        if(dir.isDirectory()){
//            File[] subs = dir.listFiles(filter);
//            for(int i=0;i<subs.length;i++){
//                System.out.println(subs[i].getName()+":"+subs[i].length());
//            }
//        }
        /*File dir = new File(".");
        if(dir.isDirectory()){
            File[] subs = dir.listFiles(new FileFilter() {
                public boolean accept(File file) {
                    return file.length()>1000;
                }
            });
            for(int i=0;i<subs.length;i++){
                System.out.println(subs[i].getName()+":"+subs[i].length());
            }
        }*/
        File dir = new File(".");
        if(dir.isDirectory()){
            File[] files = dir.listFiles(file -> file.length() > 1000);//Lambda表达式写法
            for (File file : files) {//用增强for循环
                System.out.println(file.getName()+":"+file.length());
            }
        }

    }
}
